#include <stdio.h>
void main(void)
{
    // #ifdef...#endif 指令用于判断某个宏是否定义过。
    // 有时源码文件可能会重复加载某个库，为了避免这种情况，可以在库文件里使用#define定义一个空的宏。通过这个宏，判断库文件是否被加载了
    #ifdef EXTRA_HAPPY
        printf("I'm extra happy!\n");
    #else
        printf("I'm just regular\n");
    #endif

    // 通过判断宏MAVIS是否定义过，实现加载不同的头文件。
    // #ifdef MAVIS
    //   #include "foo.h"
    //   #define STABLES 1
    // #else
    //   #include "bar.h"
    //   #define STABLES 2
    // #endif

    // #ifndef...#endif指令跟#ifdef...#endif正好相反。它用来判断，如果某个宏没有被定义过，则执行指定的操作。
}
